package mymyoux.io.AMFPHPClasses
{
	[RemoteClass(alias="mymyoux.io.AMFPHPClasses.Telegramme")]
 
	[Bindable]
	/**
	 * Telegramme permet de structurer le dialogue avec PHP à travers AMFPHP dans le sens PHP => ActionScript.
	 * @author Mymyoux
	 * @version 2.0
	 */
	public class Telegramme
	{
		/**
		 * Valeur renvoyée par PHP.
		 */
		public var value:*;
		/**
		 * Tableau contenant toutes les erreurs rencontrées. (non liées au fonctionnement de AMFPHP lui-même.
		 */
		public var errors:Array;
		/**
		 * Tableau contenant les fonctions dont PHP transmet une valeur et cette valeur.
		 * Structure : <code>calls[0]=NomFonction1,calls[1]=ValeurRenvoyéeParFonction1,calls[3]=NomFonction2...</code>
		 * calls.length est toujours pair.
		 */
		public var calls:Array;
		/**
		 * Crée un objet de type Telegramme. Le développeur ne doit jamais instancier Télégramme à la main AMFPHP s'en charge.
		 */
		public function Telegramme()
		{
			calls=new Array();
			errors=new Array();
		}
		/**
		 * Renvoie <code>true</code> si des erreurs se sont produites durant le traitement (hors erreurs liées à AMFPHP lui même).
		 */
		 public function get hasErrors():Boolean
		 {
		 	return errors.length>0;
		 } 
		/**
		 * Convertit l'objet en chaine de caractères.
		 * @return	Une chaîne de caractères de la forme <code class="prettyprint">[ClasseObject paramètre1="valeur1" paramètre2="valeur2" ... ]</code> 
		 */
		public function toString():String
		{
			return "[Telegramme calls=\""+calls+"\" value=\""+value+"\" hasErrors=\""+hasErrors+"\"]";
		}

	}
}